身為 IT 工程師,PowerShell 幾乎就是我們的瑞士刀。不管是新增使用者、查磁碟空間,還是幫一堆檔案搬家,沒有它就是寸步難行。問題是,有時候指令太長、參數太多,Google 半天還是不一定找到正確範例。這時候,ChatGPT 就可以派上用場。
🖥️ 範例 1:產生使用者帳號
我問 ChatGPT:
「幫我寫一個 PowerShell script,在 AD 裡新增使用者 Tony,並設定密碼。」
它就會乖乖吐出類似的程式碼:
New-ADUser -Name "Tony" -SamAccountName "tony" -UserPrincipalName "tony@domain.com" `
-Path "OU=Users,DC=domain,DC=com" -AccountPassword (ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force) `
-Enabled $true
是不是很方便?不過注意,OU 路徑跟密碼策略要自己改,且建議先在測試區Run,千萬別整段複製貼上就跑正式區。
🖥️ 範例 2:查詢磁碟空間
再來,我丟一句:
「幫我查詢所有伺服器的磁碟空間,輸出成 CSV。」
ChatGPT會回:
Get-PSDrive -PSProvider FileSystem |
Select-Object Name, @{Name="FreeGB";Expression={($_.Free/1GB)}}, @{Name="UsedGB";Expression={($_.Used/1GB)}} |
Export-Csv -Path "C:\DiskReport.csv" -NoTypeInformation
這種報表需求超常見,平常要自己翻文件或 Stack Overflow,現在 10 秒就搞定。
🖥️ 範例 3:批次移動檔案
如果有一堆檔案要搬到另一個資料夾,我會問:
「寫一個 PowerShell,幫我把 C:\Temp 裡的所有 .log 檔搬到 D:\Logs。」
ChatGPT 會回:
Get-ChildItem -Path "C:\Temp" -Filter *.log |
Move-Item -Destination "D:\Logs"
這種小任務最適合丟給 AI,因為能省掉大量查語法的時間。
⚖️ ChatGPT 產出的 Script 優缺點
優點:快速、完整、能幫你跳脫「我忘了參數」的窘境。
缺點:有時候用錯 cmdlet,或是語法不符合你的環境。換句話說,AI 是「快速起跑」,但最後衝線還是得靠你。
🐞 如何 Debug 與驗證
先在測試環境跑,絕對不要直接丟到 production。
逐行理解:不要只看結果,要知道每行程式碼在做什麼。
小範圍測試:例如先跑單一帳號、單一檔案,確定沒問題再擴大。
加上錯誤處理:像是 -ErrorAction Stop,避免一錯全錯。
🎯 總結
ChatGPT 幫我們寫 PowerShell,就像請一個菜鳥助理來打草稿:快速、省時,但你得負責審稿。對 IT 工程師來說,這就是最划算的「加速器」。從今天開始,你可以試著把常見的 PowerShell 任務丟給 AI,然後一步步改進。這樣不但能省時間,還能邊學邊練。